"""自定义异常
自定义类 去继承 Exception 重新 魔法方法 __init__ __str__(设置异常的描述信息)
需求：利用自定义异常类 进行密码长度的校验
"""
class ShortInputError(Exception):
    def __init__(self,length,min_length):
        #用户输入的密码长度
        self.length = length
        #系统要求的密码长度
        self.min_length = min_length
    #设置异常的描述信息
    def __str__(self):
        return f'您输入的密码长度是{self.length},密码不能少于{self.min_length}位'


def main():
    #抛出异常：尝试执行校验密码长度，如果小于6位，抛出异常
    try:
        password = input("请输入密码:")
        if len(password) < 6:
            #抛出自定义异常
            raise ShortInputError(len(password),6)
    except Exception as err:
        print(err)
    else:
        print("密码输出成功")


if __name__ == '__main__':
    main()